#include <vector>
#include <set>
#include <iostream>
#include <unordered_map>
using namespace std;

vector<vector<int>> generate(int numRows) {
    vector<vector<int>> ret;
    for(int i = 0; i < numRows; i++){
        vector<int> row(i+1, 1);
        for(int j = 1; j < i; j++){
            row[j] = ret[i-1][j-1] + ret[i-1][j];
        }
        ret.push_back(row);
    }
    return ret;
}

int main(){
    int numRows = 5;
    vector<vector<int>> out = generate(numRows);
    cout << out[4][2] << endl;
    return 0;
}